{{tag>archivage format}}

----

======Format ZIP======

**ZIP** est un vieux format d'archive compressé, mais aussi une commande pour créer ce type d'archive.
Le format « .zip » est supporté nativement dans Ubuntu. 

Il archive des fichiers (regroupement en un seul fichier) et les compresse (réduction de la taille).
La commande **zip** sous Ubuntu est sous licence libre.

[[wpfr>Gzip]] (extension **.gz**), très utilisé sous Linux, utilise le même algorithme [[wpfr>deflate]] que le zip pour compresser, mais sans option d'archivage. L'archivage vient alors de **tar**, d'où l'extension **.tar.gz**.

Un des inconvénients du ZIP c'est que dans sa dimension "archivage", il perd certaines [[wpf>métadonnées]]. Ce n'est pas forcément important, mais si c'est le cas, alors mieux vaut utiliser l'archiveur **.tar**.

=====Installation=====
Zip est installé par défaut, vous n'avez rien à faire. Si **zip** n'est pas installé sur votre version d'Ubuntu (ou a été effacé) :
  * Cliquez ici pour le programme de création des zip : [[apt>zip]]. Ou au terminal **sudo apt install zip**
  * Cliquez ici pour le programme d'extraction des zip : [[apt>unzip]]. Ou au terminal **sudo apt install unzip**

=====Gérer les .zip avec un logiciel graphique=====
Le format zip (la version en ligne de commande) doit être installé. Il sera utilisé par les logiciels graphiques.
  * **Pour extraire (décompresser) une archive**, il suffit de faire un clic-droit sur son fichier, puis choisir "Extraire l'archive" (ou formulation équivalente selon votre variante d'Ubuntu, comme "Décompresser l'archive").
  * **Pour créer une archive**, il suffit de sélectionner les fichiers à compresser dans son explorateur de fichiers, puis faire un clic-droit, "compresser" (ou un équivalent), choisir le **zip** dans les formats de compression/archivage proposés, et valider.

Les gestionnaires d'archives ne sont donc pas forcément indispensables, mais votre installation d'Ubuntu en a normalement un, permettant d'aller plus loin dans la manipulation des archives (ajouts ou suppressions partielles, par exemple). Si vous en cherchez un autre que celui par défaut, consultez [[archivage|cette page]].

=====Gérer les .zip en ligne de commande=====

Ce type d'utilisation se fait plutôt dans des scripts. On utilise alors les commandes **zip** (création) et **unzip** (extraction). Pour connaître les options, tapez **man zip** ou **man unzip** au terminal. Ci-dessous les commandes de bases.

==== Création ====
  zip votre_archive.zip fichier1 fichier2 fichier3
Cet exemple crée le fichier **votre_archive.zip** à partir de la liste des fichiers qui suivent, et qui sont séparés par des espaces.
  zip -r votre_archive.zip [dossier à archiver/compresser]
Dans cet exemple, l'option **-r** implique la récursivité, c'est à dire que zip va compresser/archiver TOUT ce qui se trouve dans le ou les répertoires indiqués, __y compris__ les sous-répertoires.
  zip -r votre_archive.zip *
Dans cet exemple, l'astérisque "**%%*%%**" indique que TOUT dans le répertoire courant doit être zippé, et l'option **-r** indique que cela inclut aussi les sous-répertoires.
  zip -e votre_archive.zip [liste des fichiers]
L'option **-e** chiffre le zip et demande un mot de passe.

Afin de compresser plusieurs sous-répertoires séparément (bash) :
  for f in *; do zip "$f.zip" "$f"/*; done

==== Extraction ====
  unzip votre_archive.zip -d mon_repertoire

Extraction de plusieurs .zip d'un même dossier :
<code>for f in *.zip;do unzip "$f";done</code>
ou
<code>unzip '*.zip'</code>

===== Archives zip découpées  =====
Quelques fois les archives zip sont découpées comme suit : archive.z01, archive.z02, ..., archive.zip

Pour gagner du temps à la décompression / extraction, on peut assembler ces fichiers dans une seule archive, puis extraire cette dernière :
<code>
cat archive.z* > archive_globale.zip
unzip archive_globale.zip
</code>

=====Voir aussi=====
  *[[archivage]]
  *[[:p7zip]]
